<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>

<body>

</body>
<script>
    // test()  用既定的规则检索字符串,如果字符串包含符合规则的某个或某段字符 则返回true 否则返回false

    var str = "good good study , Day dAy up";
    // var reg = /day/i;   // D|d  A|a  Y|y
    // console.log(reg.test(str));

    // 如果不加修饰符g, 默认从头开始匹配
    // console.log(reg.test(str));
    // console.log(reg.test(str));
    // console.log(reg.test(str));


    // 如果添加修饰符g, 默认从头开始匹配,如果存在满足规则的某个或某段字符 则返回true, 并记录下次开始下标(lastIndex)  用来做下次匹配, 如果匹配不到则返回false (lastIndex重置为0)
    // var reg = /day/ig;   // D|d  A|a  Y|y
    // console.log("初始:",reg.lastIndex);
    // console.log(reg.test(str),reg.lastIndex);
    // console.log(reg.test(str),reg.lastIndex);
    // console.log(reg.test(str),reg.lastIndex);


    // exec()    用既定的规则检索字符串,将符合规则的某个或某段字符放到数组中  ,取不到则返回null    (每次只能匹配一个)
    // 如果不加修饰符g, 默认从头开始匹配
    // var reg = /day/i;   // D|d  A|a  Y|y
    // console.log(reg.exec(str));
    // console.log(reg.exec(str));
    // console.log(reg.exec(str));

    // 如果添加修饰符g, 默认从头开始匹配,如果存在满足规则的某个或某段字符 则返回true, 并记录下次开始下标(lastIndex)  用来做下次匹配, 如果匹配不到则返回false (lastIndex重置为0)
    var reg = /day/ig;   // D|d  A|a  Y|y
    console.log("初始:", reg.lastIndex);
    console.log(reg.exec(str), reg.lastIndex);
    console.log(reg.exec(str), reg.lastIndex);
    console.log(reg.exec(str), reg.lastIndex);



    
    // 查找字符串中day出现的次数
    // var str = "good good study , day day up";
    // var char = "day";

    // var count = 0;
    // var lastIndex = 0; // 默认从开始位置查找
    // do{
    //     var index = str.indexOf("day",lastIndex);
    //     if(index!=-1){
    //         lastIndex = index+char.length;
    //         count++;
    //     }else{
    //         lastIndex = 0;
    //     }
    // }while(index!=-1);

    // console.log(count);

    // var str = "good good study , day day up";
    // var reg = /day/ig; 
    // var count = 0;
    // while(reg.test(str)){
    //     count++;
    // }
    // console.log(count);
</script>

</html>